Probabilistic location prediction for a mobile station

ABSTRACT

A probabilistic prediction is made of the location of a wireless-enabled mobile station in a wireless local area network. The prediction includes calculating a vector representing movement of the mobile station through a space in which two or more access points of the network are located, and determining a region surrounding the vector in which the mobile station has at least a given probability to be located within a certain period of time.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.11/167,146, filed Jun. 28, 2005 and entitled “PROBABILISTIC LOCATIONPREDICTION FOR A MOBILE STATION”, which is incorporated by reference inits entirety.

BACKGROUND OF THE INVENTION

The invention generally relates to wireless networks. In particular,embodiments of the invention relate to probabilistic prediction of alocation of a wireless-enabled mobile station.

Wireless networks, specifically those based on the Institute ofElectrical and Electronic Engineers (IEEE) 802.11 standard, areexperiencing rapid growth. Some users, for example laptop users, use thenetwork while stationary (or associated with a single access point(AP)), and before moving, the user ceases operation only to continueusing the network after moving to a new location. This is known as“discrete mobility” and “nomadic roaming”. Other users, for examplevoice-based application users, use the network while moving. This isknown as “continuous mobility” and “seamless roaming”.

Currently, the handoff procedure as a mobile station roams from one APto another entails too much latency to support voice and multimediaapplications. This handoff procedure results in a transfer of physicallayer connectivity and state information from one AP to another withrespect to the mobile station. Moreover, APs have limited resources, andit is possible that as a mobile station enters the coverage area of anAP, that AP does not have the resources to support the mobile station.

BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments of the invention are illustrated by way of example and notlimitation in the figures of the accompanying drawings, in which likereference numerals indicate corresponding, analogous or similarelements, and in which:

FIG. 1 is an illustration of an exemplary deployment of a wireless localarea network (LAN) in a building, according to an embodiment of theinvention. The LAN includes access points (APs) and a switched, routedfabric including a server;

FIG. 2 is a flowchart of a method implemented at least in part by theserver of FIG. 1, according to an embodiment of the invention;

FIG. 3 is a block diagram of an exemplary server, according to someembodiments of the invention; and

FIG. 4 is a block diagram of an exemplary mobile station, according tosome embodiments of the invention.

It will be appreciated that for simplicity and clarity of illustration,elements shown in the figures have not necessarily been drawn to scale.For example, the dimensions of some of the elements may be exaggeratedrelative to other elements for clarity.

DETAILED DESCRIPTION OF EMBODIMENTS OF THE INVENTION

In the following detailed description, numerous specific details are setforth in order to provide a thorough understanding of embodiments of theinvention. However it will be understood by those of ordinary skill inthe art that the embodiments of the invention may be practiced withoutthese specific details. In other instances, well-known methods,procedures, and components have not been described in detail so as notto obscure the embodiments of the invention.

FIG. 1 is an illustration of an exemplary deployment of a wireless localarea network (LAN) in a building, according to an embodiment of theinvention. The WLAN includes APs 102, 103, 104 and 105 and a switched,routed fabric including a server 106.

A mobile station 110 may be active in the WLAN. A non-exhaustive list ofexamples for mobile station 110 includes a wireless-enabled laptop, awireless-enabled cellphone, a wireless-enabled personal digitalassistant (PDA), a wireless-enabled video camera, a wireless-enabledgaming console, a wireless Internet-Protocol (IP) phone and any othersuitable wireless-enabled mobile station.

In the example of FIG. 1, APs 102, 103, 104 and 105, server 106 andmobile station 110 are “IEEE 802.11-enabled”, which means that wirelesscommunications in the WLAN via the respective WLAN controllers of thewireless devices are in accordance with one or more of the followingstandards defined by the Institute of Electrical and ElectronicEngineers (IEEE) for Wireless LAN MAC and Physical layer (PHY)specifications: IEEE 802.11, published 1997; IEEE 802.11a, published1999; IEEE 802.11b, published 1999; IEEE 802.11g, published 2003.However, it will be obvious to those of ordinary skill in the art how tomodify the following for other existing WLAN standards or future relatedstandards, including IEEE 802.11i, IEEE 802.11n and IEEE 802.11r.

FIG. 2 is a flowchart of a method implemented, at least partially, byserver 106, according to an embodiment of the invention.

A vector representing motion of mobile station 110 is calculated (200).The vector may be calculated by server 106, or by mobile station 110 andthen transmitted wirelessly via the WLAN to server 106 for furtherprocessing.

An exemplary vector 120 is shown in FIG. 1, based at the currentposition of mobile station 110, having a direction representing thedirection of motion of mobile station 110 and a length representing thespeed of motion of mobile station 110. The vector may be calculated onthe basis of any one or any combination of instantaneous, projected andhistoric information. The information may be specific to mobile station110 or to a group or class of users to which mobile station 110 belongs,or may be global information applicable to all mobile stations. Thehistoric information may be incorporated using a forgetting factor sothat more recent information has more of an effect than less recentinformation.

For example, mobile station 110 may transmit signal strengthmeasurements to server 106 as it moves through the building, and server106 may use these measurements, the fixed locations of APs 102, 103, 104and 105, and the layout of the building to calculate the vector. In thisexample, the signal strength measurements are specific to mobile station110, and the fixed locations of the access points in the network and thelayout of the building are global information applicable to all mobilestations.

In another example, mobile station 110 may transmit global positioningsystem (GPS) information to server 106, and server 106 may use thisinformation to calculate the vector. In this example, the GPSinformation is specific to mobile station 110 and may includeinstantaneous and/or historical information.

In another example, server 106 may use handoff information regardingmobile station 110 and/or regarding mobile stations belonging to a classor group of users to which mobile station 110 also belongs. For example,if mobile station 110 belongs to a user in a group of users thatgenerally roam in a certain pattern in the building, for example, usersthat share an office, then that certain roaming pattern may be used tocalculate the vector. Moreover, if mobile station 110 belongs to a userin a particular class of users, for example, managers, that frequentlyroam to certain locations in the building, for example, the meetingroom, then that information may be used to calculate the vector. In afurther example, women who work in one building and then roam to anotherbuilding tend to visit the meeting rooms and women's washrooms of theother building and never visit the men's washrooms of the otherbuilding. In yet another example, maintenance and facilities staffaccess areas of buildings (for example, heating, ventilation and airconditioning areas, wiring rooms) that other staff members do not.

Server 106 then determines a region in which mobile station 110 islikely to be located with at least a given probability within a certainperiod of time (202). Three exemplary regions 130, 132 and 134 are shownin FIG. 1. Regions 130 and 132 are for the same period of time, but theprobability that mobile station 110 is located in region 130 is higherthan the probability that mobile station 110 is located in region 132.Regions 132 and 134 are for the same probability, but region 134 is fora longer period of time than region 132.

Although vector 120 and regions 130, 132 and 134 are illustrated asplanar in FIG. 1, embodiments of this invention may be generalized tothree dimensions when appropriate, for example, buildings with multiplefloors.

Similarly, although this description relates to a single vector and aregion around the vector, persons of ordinary skill in the art canmodify embodiments of this invention to apply to a sequence of vectorsor a curved path approximated thereby.

Server 106 may take various factors into account when determining theregion. A non-exhaustive list of examples for such factors includes:

1. Global Factors

-   -   a) a user of a mobile station tends to move in a straight line;    -   b) it is unlikely that a user will reverse direction;    -   c) the physical structure of a building will affect the route of        a user of a mobile station (for example, the placement of walls,        stairs, doors, elevators and the like).        2. Class/Group Factors    -   a) visitors to the building tend to visit certain areas;    -   b) users with preferred access to resources may be allotted        larger regions than normal users;    -   c) the history of routes of other users in the same class or        group;        3. Individual Factors    -   a) the individual history of the user;    -   b) the user is sedentary, or the user moves around a lot;    -   c) if the user is in a wheelchair, exclude routes involving        stairs, increase the likelihood of visiting        wheelchair-accessible washrooms, and decrease the likelihood of        entering non-wheelchair-accessible rooms.

The historic information may be incorporated using a forgetting factorso that more recent information has more of an effect than less recentinformation.

For example, if mobile station 110 is stationary, and no other factorsare taken into account, the vector is a point and the region may be acircle around mobile station 110. As mobile station 110 moves, thiscircle may be deformed in the direction of motion. The faster mobilestation 110 moves in a particular direction, the longer the vectorrepresenting the motion of mobile station 110, and the more deformed theregion is from a circle and the more area covered by the region.

Once server 106 has determined the region in which mobile station 110has at least a given probability to be located within a certain periodof time, server 106 may identify which, if any, of APs 102, 103, 104 and105 have a coverage area that overlaps, even partially, the determinedregion (204). For example, the coverage areas of APs 102 and 103 mayoverlap regions 130, 132 and 134, while the coverage area of AP 104 mayoverlap regions 132 and 134 only, and the coverage area of AP 105 maynot overlap any of regions 130, 132 and 134.

The coverage areas of the APs may have been calculated or measured. Forexample, server 106 may calculate the coverage area of an access pointbased on its location, make, model and some characteristic data for suchan access point. In another example, server 106 may dynamicallycalculate the coverage area of an access point from collected data ofwhen, where and at what received signal strength indication (RSSI)mobile stations roam.

A non-exhaustive list of examples for actions that server 106 may takeupon identifying the access points includes:

-   a) Initiating pre-authentication processes with one or more of the    identified APs (206), by signaling either mobile station 110 or the    AP to begin and with which communications partner. For example,    pre-authentication may be performed at the Data Link layer (“layer    2”) of the WLAN, or at the Data Link layer (“layer 2”) and the    Network layer (“layer 3”) of the WLAN, according to the Open Systems    Interconnection (OSI) communication model. If regions of different    given probabilities are determined, pre-authentication at “layer 2”    and “layer 3” may be done for APs that are accessible by mobile    station 110 from within the region of higher probability and    pre-authentication at “layer 2” may be done for APs that are    accessible by mobile station 110 only from within the region of    lower probability. Pre-authentication may accelerate the handoff    procedure as mobile station 110 roams from one AP to another.-   b) Reserving resources for mobile station 110 at one or more of the    identified APs (208). For example, if mobile station 110 has a    probability of 60% of roaming to a particular AP within 1 minute,    bandwidth may be reserved for mobile station 110 at the particular    AP. However, if a different mobile station has a probability of 90%    of roaming to the particular AP, the resource needs of the different    mobile station may trump the needs of mobile station 110.-   c) Pre-caching or routing content for the user of mobile station 110    at one or more of the identified APs (210). A non-exhaustive list of    examples for this content includes targeted advertising, telephone    calls, and the like.-   d) Notifying voice over IP (VoIP) servers that a call endpoint might    be about to roam (so that the call data could start to be    multicasted to the APs in the region).-   e) Initiating roaming procedures to other networks (for example,    roaming from the WLAN to a cellular network).-   f) Updating presence information (which in turn can be used to route    phone calls, update calendar appointments, create lists of meeting    attendees, notify conference call participants of the names of    people in the room on the other end, and the like).

FIG. 3 is a block diagram of an exemplary server, according to someembodiments of the invention. Server 106 includes at least one antenna300 coupled to a radio 302, which in turn is coupled to a WLANcontroller 304. WLAN controller 304 may be coupled to a memory 306storing firmware 308 to be executed by WLAN controller 304. Server 106includes a processor 310 and a memory 312 coupled to processor 310.Memory 312 may store executable code 314 to be executed by processor310. Executable code 314, when executed by processor 310, may causeserver 106 to implement all or a portion of the method of FIG. 2.

Processor 310 may be coupled to WLAN controller 304 and may be able tocontrol, at least in part, the operation of WLAN controller 304. Server106 includes a battery 316 to provide power to radio 302, WLANcontroller 304, processor 310 and memories 306 and 312. Server 106 mayinclude other components that, for clarity, are not shown.

Radio 302, WLAN controller 304, processor 310 and memories 306 and 312are functional blocks and may be implemented in any physical way inserver 106. For example, radio 302, WLAN controller 304, processor 310and memories 306 and 312 may be implemented in separate integratedcircuits, and optionally in additional discrete components.Alternatively, some of the functional blocks may be grouped in oneintegrated circuit. Furthermore, the functional blocks may be parts ofapplication specific integrated circuits (ASIC), field programmable gatearrays (FPGA) or application specific standard products (ASSP).

FIG. 4 is a block diagram of an exemplary mobile station, according tosome embodiments of the invention. Mobile station 110 includes at leastone antenna 400 coupled to a radio 402, which in turn is coupled to aWLAN controller 404. WLAN controller 404 may be coupled to a memory 406storing firmware 408 to be executed by WLAN controller 404. Mobilestation 110 includes a processor 410 and a memory 412 coupled toprocessor 410. Memory 412 may store executable code 414 to be executedby processor 410. Executable code 414, when executed by processor 410,may cause mobile station 110 to calculate a vector representing movementof mobile station 110 through a space in which two or more APs arelocated, as at 200 of the method of FIG. 2.

Processor 410 may be coupled to WLAN controller 404 and may be able tocontrol, at least in part, the operation of WLAN controller 404. Mobilestation 110 includes a battery 416 to provide power to radio 402, WLANcontroller 404, processor 410 and memories 406 and 412. Mobile station110 may include other components that, for clarity, are not shown.

Radio 402, WLAN controller 404, processor 410 and memories 406 and 412are functional blocks and may be implemented in any physical way inmobile station 110. For example, radio 402, WLAN controller 404,processor 410 and memories 406 and 412 may be implemented in separateintegrated circuits, and optionally in additional discrete components.Alternatively, some of the functional blocks may be grouped in oneintegrated circuit. Furthermore, the functional blocks may be parts ofapplication specific integrated circuits (ASIC), field programmable gatearrays (FPGA) or application specific standard products (ASSP).

A non-exhaustive list of examples for processors 310 and 410 includes acentral processing unit (CPU), a digital signal processor (DSP), areduced instruction set computer (RISC), a complex instruction setcomputer (CISC) and the like.

Memories 306 and 312 may be fixed in or removable from server 106.Similarly, memories 406 and 412 may be fixed in or removable from mobilestation 110. A non-exhaustive list of examples for memories 306, 312,406 and 412 includes any combination of the following:

-   -   a) semiconductor devices such as registers, latches, read only        memory (ROM), mask ROM, electrically erasable programmable read        only memory devices (EEPROM), flash memory devices, non-volatile        random access memory devices (NVRAM), synchronous dynamic random        access memory (SDRAM) devices, RAMBUS dynamic random access        memory (RDRAM) devices, double data rate (DDR) memory devices,        static random access memory (SRAM), universal serial bus (USB)        removable memory, and the like;    -   b) optical devices, such as compact disk read only memory (CD        ROM), and the like; and    -   c) magnetic devices, such as a hard disk, a floppy disk, a        magnetic tape, and the like.

A non-exhaustive list of examples for antennae 300 and 400 includes adipole antenna, a monopole antenna, a multilayer ceramic antenna, aplanar inverted-F antenna, a loop antenna, a shot antenna, a dualantenna, an omnidirectional antenna and any other suitable antenna.

While certain features of the invention have been illustrated anddescribed herein, many modifications, substitutions, changes, andequivalents will now occur to those of ordinary skill in the art. It is,therefore, to be understood that the appended claims are intended tocover all such modifications and changes as fall within the spirit ofthe invention.

1. A method for probabilistic prediction of a location of a mobilestation in a wireless local area network, the method comprising:calculating by said mobile station a vector representing movement ofsaid mobile station through a space in which two or more access pointsof said wireless local area network are located; and determining aregion surrounding said vector in which said mobile station has at leasta given probability to be located within a certain period of time,wherein calculating said vector includes using signal strengthinformation regarding signals received at said mobile station over saidwireless local area network and using the locations of one or moreaccess points generating said signals.
 2. The method of claim 1, whereincalculating said vector further comprises using global positioningsystem data for said mobile station.
 3. The method of claim 1, furthercomprising: identifying which of said access points are accessible bysaid mobile station from within said region.
 4. The method of claim 3,further comprising: reserving resources for said mobile station at oneor more of said access points that are accessible.
 5. The method ofclaim 3, further comprising: pre-authenticating said mobile station withone or more of said access points that are accessible.
 6. The method ofclaim 5, wherein pre-authenticating said mobile station includes atleast: pre-authentication at the Data Link layer of said networkaccording to the Open Systems Interconnection communication model. 7.The method of claim 5, wherein pre-authenticating said mobile stationincludes at least: pre-authentication at the Data Link layer and theNetwork layer of said network according to the Open SystemsInterconnection communication model.
 8. A method for probabilisticprediction of a location of a mobile station in a wireless local areanetwork, the method comprising: calculating a vector representingmovement of said mobile station through a space in which two or moreaccess points of said wireless local area network are located; anddetermining a region surrounding said vector in which said mobilestation has at least a given probability to be located within a certainperiod of time, wherein as said mobile station moves from a stationarystate, said region is a deformed circle that is deformed in a directionof motion of said mobile station, and wherein said mobile stationcomprises a wireless local area network controller that enables saidmobile station to communicate over said wireless local area network. 9.The method of claim 8, further comprising: identifying which of saidaccess points are accessible by said mobile station from within saidregion.
 10. The method of claim 9, further comprising: reservingresources for said mobile station at one or more of said access pointsthat are accessible.
 11. The method of claim 9, further comprising:pre-authenticating said mobile station with one or more of said accesspoints that are accessible.
 12. The method of claim 11, whereinpre-authenticating said mobile station includes at least:pre-authentication at the Data Link layer of said network according tothe Open Systems Interconnection communication model.
 13. The method ofclaim 11, wherein pre-authenticating said mobile station includes atleast: pre-authentication at the Data Link layer and the Network layerof said network according to the Open Systems Interconnectioncommunication model.
 14. A server comprising: an antenna; a radiocoupled to said antenna; a wireless local area network controllercoupled to said radio through which said server is able to communicateover a wireless local area network with mobile stations; a processorcoupled to said wireless local area network controller; and memory tostore code which, when executed by said processor, collects data ofwhen, where and at what received signal strength indication said mobilestations roam and dynamically calculates therefrom a coverage area of anaccess point in said wireless local area network.
 15. The server ofclaim 14, wherein said code, when executed by said processor, calculatesa vector representing movement of a wireless-enabled mobile stationthrough a space in which two or more access points of said network arelocated and determines a region surrounding said vector in which saidmobile station has at least a given probability to be located within acertain period of time.
 16. The server of claim 15, wherein said code,when executed by said processor, identifies, using at least saidcalculated coverage area and said determined region, which of saidaccess points are accessible by said mobile station from within saidregion.
 17. The server of claim 16, wherein said code, when executed bysaid processor, reserves resources for said mobile station at one ormore of said access points that are accessible.
 18. The server of claim16, wherein said code, when executed by said processor,pre-authenticates said mobile station with one or more of said accesspoints that are accessible.
 19. The server of claim 16, wherein saidcode, when executed by said processor, pre-authenticates, at the DataLink layer of said network according to the Open Systems Interconnectioncommunication model, said mobile station with one or more of said accesspoints that are accessible.
 20. The server of claim 16, wherein saidcode, when executed by said processor, pre-authenticates, at the DataLink layer and the Network layer of said network according to the OpenSystems Interconnection communication model, said mobile station withone or more of said access points that are accessible.